﻿using System;
using System.CodeDom.Compiler;
using System.Diagnostics;
using Google.Protobuf;
using Google.Protobuf.Collections;
using Google.Protobuf.Reflection;

namespace EggLink.DanhengServer.Proto
{
	// Token: 0x02001115 RID: 4373
	[DebuggerDisplay("{ToString(),nq}")]
	public sealed class SelectRogueCommonDialogueOptionScRsp : IMessage<SelectRogueCommonDialogueOptionScRsp>, IMessage, IEquatable<SelectRogueCommonDialogueOptionScRsp>, IDeepCloneable<SelectRogueCommonDialogueOptionScRsp>, IBufferMessage
	{
		// Token: 0x17003766 RID: 14182
		// (get) Token: 0x0600C3B4 RID: 50100 RVA: 0x00211373 File Offset: 0x0020F573
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageParser<SelectRogueCommonDialogueOptionScRsp> Parser
		{
			get
			{
				return SelectRogueCommonDialogueOptionScRsp._parser;
			}
		}

		// Token: 0x17003767 RID: 14183
		// (get) Token: 0x0600C3B5 RID: 50101 RVA: 0x0021137A File Offset: 0x0020F57A
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageDescriptor Descriptor
		{
			get
			{
				return SelectRogueCommonDialogueOptionScRspReflection.Descriptor.MessageTypes[0];
			}
		}

		// Token: 0x17003768 RID: 14184
		// (get) Token: 0x0600C3B6 RID: 50102 RVA: 0x0021138C File Offset: 0x0020F58C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		MessageDescriptor IMessage.Descriptor
		{
			get
			{
				return SelectRogueCommonDialogueOptionScRsp.Descriptor;
			}
		}

		// Token: 0x0600C3B7 RID: 50103 RVA: 0x00211393 File Offset: 0x0020F593
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public SelectRogueCommonDialogueOptionScRsp()
		{
		}

		// Token: 0x0600C3B8 RID: 50104 RVA: 0x002113A8 File Offset: 0x0020F5A8
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public SelectRogueCommonDialogueOptionScRsp(SelectRogueCommonDialogueOptionScRsp other) : this()
		{
			this.retcode_ = other.retcode_;
			this.eventUniqueId_ = other.eventUniqueId_;
			this.optionId_ = other.optionId_;
			this.dialogueData_ = ((other.dialogueData_ != null) ? other.dialogueData_.Clone() : null);
			this.eventHasEffect_ = other.eventHasEffect_;
			this.effectEventIdList_ = other.effectEventIdList_.Clone();
			this._unknownFields = UnknownFieldSet.Clone(other._unknownFields);
		}

		// Token: 0x0600C3B9 RID: 50105 RVA: 0x00211429 File Offset: 0x0020F629
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public SelectRogueCommonDialogueOptionScRsp Clone()
		{
			return new SelectRogueCommonDialogueOptionScRsp(this);
		}

		// Token: 0x17003769 RID: 14185
		// (get) Token: 0x0600C3BA RID: 50106 RVA: 0x00211431 File Offset: 0x0020F631
		// (set) Token: 0x0600C3BB RID: 50107 RVA: 0x00211439 File Offset: 0x0020F639
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public uint Retcode
		{
			get
			{
				return this.retcode_;
			}
			set
			{
				this.retcode_ = value;
			}
		}

		// Token: 0x1700376A RID: 14186
		// (get) Token: 0x0600C3BC RID: 50108 RVA: 0x00211442 File Offset: 0x0020F642
		// (set) Token: 0x0600C3BD RID: 50109 RVA: 0x0021144A File Offset: 0x0020F64A
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public uint EventUniqueId
		{
			get
			{
				return this.eventUniqueId_;
			}
			set
			{
				this.eventUniqueId_ = value;
			}
		}

		// Token: 0x1700376B RID: 14187
		// (get) Token: 0x0600C3BE RID: 50110 RVA: 0x00211453 File Offset: 0x0020F653
		// (set) Token: 0x0600C3BF RID: 50111 RVA: 0x0021145B File Offset: 0x0020F65B
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public uint OptionId
		{
			get
			{
				return this.optionId_;
			}
			set
			{
				this.optionId_ = value;
			}
		}

		// Token: 0x1700376C RID: 14188
		// (get) Token: 0x0600C3C0 RID: 50112 RVA: 0x00211464 File Offset: 0x0020F664
		// (set) Token: 0x0600C3C1 RID: 50113 RVA: 0x0021146C File Offset: 0x0020F66C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RogueCommonDialogueDataInfo DialogueData
		{
			get
			{
				return this.dialogueData_;
			}
			set
			{
				this.dialogueData_ = value;
			}
		}

		// Token: 0x1700376D RID: 14189
		// (get) Token: 0x0600C3C2 RID: 50114 RVA: 0x00211475 File Offset: 0x0020F675
		// (set) Token: 0x0600C3C3 RID: 50115 RVA: 0x0021147D File Offset: 0x0020F67D
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool EventHasEffect
		{
			get
			{
				return this.eventHasEffect_;
			}
			set
			{
				this.eventHasEffect_ = value;
			}
		}

		// Token: 0x1700376E RID: 14190
		// (get) Token: 0x0600C3C4 RID: 50116 RVA: 0x00211486 File Offset: 0x0020F686
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RepeatedField<uint> EffectEventIdList
		{
			get
			{
				return this.effectEventIdList_;
			}
		}

		// Token: 0x0600C3C5 RID: 50117 RVA: 0x0021148E File Offset: 0x0020F68E
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override bool Equals(object other)
		{
			return this.Equals(other as SelectRogueCommonDialogueOptionScRsp);
		}

		// Token: 0x0600C3C6 RID: 50118 RVA: 0x0021149C File Offset: 0x0020F69C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool Equals(SelectRogueCommonDialogueOptionScRsp other)
		{
			return other != null && (other == this || (this.Retcode == other.Retcode && this.EventUniqueId == other.EventUniqueId && this.OptionId == other.OptionId && object.Equals(this.DialogueData, other.DialogueData) && this.EventHasEffect == other.EventHasEffect && this.effectEventIdList_.Equals(other.effectEventIdList_) && object.Equals(this._unknownFields, other._unknownFields)));
		}

		// Token: 0x0600C3C7 RID: 50119 RVA: 0x00211530 File Offset: 0x0020F730
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override int GetHashCode()
		{
			int num = 1;
			if (this.Retcode != 0U)
			{
				num ^= this.Retcode.GetHashCode();
			}
			if (this.EventUniqueId != 0U)
			{
				num ^= this.EventUniqueId.GetHashCode();
			}
			if (this.OptionId != 0U)
			{
				num ^= this.OptionId.GetHashCode();
			}
			if (this.dialogueData_ != null)
			{
				num ^= this.DialogueData.GetHashCode();
			}
			if (this.EventHasEffect)
			{
				num ^= this.EventHasEffect.GetHashCode();
			}
			num ^= this.effectEventIdList_.GetHashCode();
			if (this._unknownFields != null)
			{
				num ^= this._unknownFields.GetHashCode();
			}
			return num;
		}

		// Token: 0x0600C3C8 RID: 50120 RVA: 0x002115DE File Offset: 0x0020F7DE
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override string ToString()
		{
			return JsonFormatter.ToDiagnosticString(this);
		}

		// Token: 0x0600C3C9 RID: 50121 RVA: 0x002115E6 File Offset: 0x0020F7E6
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void WriteTo(CodedOutputStream output)
		{
			output.WriteRawMessage(this);
		}

		// Token: 0x0600C3CA RID: 50122 RVA: 0x002115F0 File Offset: 0x0020F7F0
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalWriteTo(ref WriteContext output)
		{
			this.effectEventIdList_.WriteTo(ref output, SelectRogueCommonDialogueOptionScRsp._repeated_effectEventIdList_codec);
			if (this.OptionId != 0U)
			{
				output.WriteRawTag(40);
				output.WriteUInt32(this.OptionId);
			}
			if (this.Retcode != 0U)
			{
				output.WriteRawTag(48);
				output.WriteUInt32(this.Retcode);
			}
			if (this.EventUniqueId != 0U)
			{
				output.WriteRawTag(56);
				output.WriteUInt32(this.EventUniqueId);
			}
			if (this.EventHasEffect)
			{
				output.WriteRawTag(112);
				output.WriteBool(this.EventHasEffect);
			}
			if (this.dialogueData_ != null)
			{
				output.WriteRawTag(122);
				output.WriteMessage(this.DialogueData);
			}
			if (this._unknownFields != null)
			{
				this._unknownFields.WriteTo(ref output);
			}
		}

		// Token: 0x0600C3CB RID: 50123 RVA: 0x002116B0 File Offset: 0x0020F8B0
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public int CalculateSize()
		{
			int num = 0;
			if (this.Retcode != 0U)
			{
				num += 1 + CodedOutputStream.ComputeUInt32Size(this.Retcode);
			}
			if (this.EventUniqueId != 0U)
			{
				num += 1 + CodedOutputStream.ComputeUInt32Size(this.EventUniqueId);
			}
			if (this.OptionId != 0U)
			{
				num += 1 + CodedOutputStream.ComputeUInt32Size(this.OptionId);
			}
			if (this.dialogueData_ != null)
			{
				num += 1 + CodedOutputStream.ComputeMessageSize(this.DialogueData);
			}
			if (this.EventHasEffect)
			{
				num += 2;
			}
			num += this.effectEventIdList_.CalculateSize(SelectRogueCommonDialogueOptionScRsp._repeated_effectEventIdList_codec);
			if (this._unknownFields != null)
			{
				num += this._unknownFields.CalculateSize();
			}
			return num;
		}

		// Token: 0x0600C3CC RID: 50124 RVA: 0x00211758 File Offset: 0x0020F958
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(SelectRogueCommonDialogueOptionScRsp other)
		{
			if (other == null)
			{
				return;
			}
			if (other.Retcode != 0U)
			{
				this.Retcode = other.Retcode;
			}
			if (other.EventUniqueId != 0U)
			{
				this.EventUniqueId = other.EventUniqueId;
			}
			if (other.OptionId != 0U)
			{
				this.OptionId = other.OptionId;
			}
			if (other.dialogueData_ != null)
			{
				if (this.dialogueData_ == null)
				{
					this.DialogueData = new RogueCommonDialogueDataInfo();
				}
				this.DialogueData.MergeFrom(other.DialogueData);
			}
			if (other.EventHasEffect)
			{
				this.EventHasEffect = other.EventHasEffect;
			}
			this.effectEventIdList_.Add(other.effectEventIdList_);
			this._unknownFields = UnknownFieldSet.MergeFrom(this._unknownFields, other._unknownFields);
		}

		// Token: 0x0600C3CD RID: 50125 RVA: 0x0021180D File Offset: 0x0020FA0D
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(CodedInputStream input)
		{
			input.ReadRawMessage(this);
		}

		// Token: 0x0600C3CE RID: 50126 RVA: 0x00211818 File Offset: 0x0020FA18
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalMergeFrom(ref ParseContext input)
		{
			uint num;
			while ((num = input.ReadTag()) != 0U)
			{
				if (num <= 40U)
				{
					if (num == 8U || num == 10U)
					{
						this.effectEventIdList_.AddEntriesFrom(ref input, SelectRogueCommonDialogueOptionScRsp._repeated_effectEventIdList_codec);
						continue;
					}
					if (num == 40U)
					{
						this.OptionId = input.ReadUInt32();
						continue;
					}
				}
				else if (num <= 56U)
				{
					if (num == 48U)
					{
						this.Retcode = input.ReadUInt32();
						continue;
					}
					if (num == 56U)
					{
						this.EventUniqueId = input.ReadUInt32();
						continue;
					}
				}
				else
				{
					if (num == 112U)
					{
						this.EventHasEffect = input.ReadBool();
						continue;
					}
					if (num == 122U)
					{
						if (this.dialogueData_ == null)
						{
							this.DialogueData = new RogueCommonDialogueDataInfo();
						}
						input.ReadMessage(this.DialogueData);
						continue;
					}
				}
				this._unknownFields = UnknownFieldSet.MergeFieldFrom(this._unknownFields, ref input);
			}
		}

		// Token: 0x04004EF5 RID: 20213
		private static readonly MessageParser<SelectRogueCommonDialogueOptionScRsp> _parser = new MessageParser<SelectRogueCommonDialogueOptionScRsp>(() => new SelectRogueCommonDialogueOptionScRsp());

		// Token: 0x04004EF6 RID: 20214
		private UnknownFieldSet _unknownFields;

		// Token: 0x04004EF7 RID: 20215
		public const int RetcodeFieldNumber = 6;

		// Token: 0x04004EF8 RID: 20216
		private uint retcode_;

		// Token: 0x04004EF9 RID: 20217
		public const int EventUniqueIdFieldNumber = 7;

		// Token: 0x04004EFA RID: 20218
		private uint eventUniqueId_;

		// Token: 0x04004EFB RID: 20219
		public const int OptionIdFieldNumber = 5;

		// Token: 0x04004EFC RID: 20220
		private uint optionId_;

		// Token: 0x04004EFD RID: 20221
		public const int DialogueDataFieldNumber = 15;

		// Token: 0x04004EFE RID: 20222
		private RogueCommonDialogueDataInfo dialogueData_;

		// Token: 0x04004EFF RID: 20223
		public const int EventHasEffectFieldNumber = 14;

		// Token: 0x04004F00 RID: 20224
		private bool eventHasEffect_;

		// Token: 0x04004F01 RID: 20225
		public const int EffectEventIdListFieldNumber = 1;

		// Token: 0x04004F02 RID: 20226
		private static readonly FieldCodec<uint> _repeated_effectEventIdList_codec = FieldCodec.ForUInt32(10U);

		// Token: 0x04004F03 RID: 20227
		private readonly RepeatedField<uint> effectEventIdList_ = new RepeatedField<uint>();
	}
}
